package com.disease.api.service.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.sql.Date;
import java.time.LocalDate;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("death_report_info")
public class DeathReportInfo {

    @TableField("id")
    private Long id;

    //emr_death_info表的主键id
    @TableField("pk_id")
    private String pkId;

    @TableField("serial_number")
    private String serialNumber;

    @TableField("card_no")
    private String cardNo;

    private String patientId;

    @TableField("patient_name")
    private String patientName;

    @TableField("id_card")
    private String idCard;

    @TableField("fill_doctor")
    private String fillDoctor;

    @TableField("dept_name")
    private String deptName;

    @TableField("dept_code")
    private String deptCode;

    @TableField("death_date")
    private String deathDate;

    private String deadDate;

    public String getDeadDate() {
        return deathDate;
    }

    @TableField("create_date")
    private LocalDate createDate;

    @TableField("create_time")
    private LocalDate createTime;

    @TableField("current_operator_id")
    private String currentOperatorId;

    @TableField("current_operator_name")
    private String currentOperatorName;

    @TableField("next_operator_id")
    private String nextOperatorId;

    @TableField("next_operator_name")
    private String nextOperatorName;

    @TableField("status")
    private String status;

    @TableField("approval_step")
    private Integer approvalStep;

    private Integer isDelete=0;

    //操作码
    private String operate;

    private String start_date;

    private String end_date;

    public DeathReportInfo(String status) {
        this.status = status;
    }

    public DeathReportInfo(String patientId, String status,Integer approvalStep) {
        this.patientId = patientId;
        this.status = status;
        this.approvalStep = approvalStep;
    }

    public DeathReportInfo(
            String deathId,
            String serialNumber,
            String deathCardNo,
            String currentOperatorId,
            String currentOperatorName,
            String nextOperatorId,
            String nextOperatorName,
            String patientId,
            String patientName,
            String idCard,
            String fillDoctor,
            String deptName,
            String deptCode,
            String deathDate,
            String status,
            Integer step) {
        this.pkId=deathId;
        this.serialNumber = serialNumber;
        this.cardNo = deathCardNo;
        this.currentOperatorId = currentOperatorId;
        this.currentOperatorName = currentOperatorName;
        this.nextOperatorId = nextOperatorId;
        this.nextOperatorName = nextOperatorName;
        this.patientId = patientId;
        this.patientName = patientName;
        this.idCard = idCard;
        this.fillDoctor = fillDoctor;
        this.deptName = deptName;
        this.deptCode = deptCode;
        this.deathDate = deathDate;
        this.status = status;
        this.approvalStep = step;
    }

    public DeathReportInfo(String deathId,String serialNumber,String patientId,String patientName,String idCard,String currentOperatorId,String currentOperatorName,String nextOperatorId,String nextOperatorName,String status,Integer step) {
        this.pkId=deathId;
        this.serialNumber = serialNumber;
        this.patientId = patientId;
        this.patientName = patientName;
        this.idCard = idCard;
        this.currentOperatorId = currentOperatorId;
        this.currentOperatorName = currentOperatorName;
        this.nextOperatorId = nextOperatorId;
        this.nextOperatorName = nextOperatorName;
        this.status = status;
        this.approvalStep = step;
    }
}
